home *** CD-ROM | disk | FTP | other *** search
Wrap
// script generated by Xtreeme SiteXpert // sitemap and search engine creator // http://www.xtreeme.com/sitexpert // Copyright(C) 2001-2002 Xtreeme GmbH #define makeTransparent f01 #define showDelayed f02 #define createMenuItem f03 #define setRealWidth f04 #define createPopupFromCode f05 #define closePopup f06 #define absToRel f07 #define openPopup f08 #define setPopupHeight f09 #define scrollPopup f10 #define isChildOfActivePopup f13 #define onPopupOver f14 #define onPopupOut f15 #define getBrowserRect f17 #define calcClientRect f18 #define getClientRect f19 #define onItemClick f20 #define onNextScroll f21 #define onItemOver f22 #define onItemOut f23 #define expandMenu exM #define collapseMenu coM #define onDocClick f28 #define initializeMenu f29 #define addNewEvent f30 #define initializeAll f31 #define errorTrap f32 #define getAbsolutePath f33 #define zz #define removeHighlight f34 #define popupRightPad v01 #define curPopupWidth v02 #define expandArrowSrc v03 #define ownerMenu v04 #define highlightColor v05 #define normalColor v06 #define highlightBgColor v07 #define normalBgColor v08 #define levelAttribs v09 #define popupOpenHeight v10 #define bBitmapPopups v11 #define arrayName v12 #define arrayItem v13 #define expandedWnd v14 #define popupRect v15 #define browserRect v16 #define activePopup v17 #define popupFrame v18 #define sepFrame v19 #define openSameFrame v20 #define imgFolder v21 #define popAlign v22 #define popupWidth v23 #define contentFrame v24 #define bBitmapScheme v25 #define itemText v26 #define itemLink v27 #define bottomImgHeight v28 #define scrollTimeout v29 #define popupArray v30 #define popupHeight v31 #define nmenu q function findElement(e,i) { return e?e.document.getElementById (i):document.getElementById (i); } function getAbsolutePath(p) { if(p&&p.indexOf(':/')==-1&&p.indexOf(':\\')==-1&&p.indexOf('/')!=0) return unescape(absPath)+p; else return p; } function addLoadHandler(lh) { if (!document.loadHandlers) { document.loadHandlers=new Array(); document.loadHandlers[0]=lh; document.lastLoadHandler=0; } else { document.lastLoadHandler++; document.loadHandlers[document.lastLoadHandler]=lh; } } addLoadHandler ('initializeMenu'); window.onload=initializeAll; function errorTrap(){return true;} window.onerror=errorTrap; function resetPopup(popup) { if(popup&&popup.children) { var i; for(i=0;i<popup.children.length;i++) { if(popup.children[i].id.indexOf('sep')==-1) { popup.children[i].style.color=popup.normalColor; popup.children[i].style.backgroundColor=popup.normalBgColor; } } } } function buildPopup(nmenu,arrayName,level) { var levelAttribs; if (level > nmenu.maxlev) {levelAttribs = eval ("nmenu.lev" + nmenu.maxlev) ;} else {levelAttribs = eval ("nmenu.lev" + level) ;} var popupName=arrayName+"popup"; nmenu.popupFrame.document.write("<div id='"+popupName+"' style='position:absolute;top:1000;padding-left:"+nmenu.bord+";padding-top:"+nmenu.bord+";padding-right:"+nmenu.bord+";padding-bottom:"+nmenu.bord+";visibility:hidden'>"); var array=eval(arrayName); var arrayItem; var ali=" align='"+(nmenu.popAlign==1?'center':(nmenu.popAlign==2?'right':'left'))+"' "; for(arrayItem=0;arrayItem<array.length/3;arrayItem++) { if (arrayItem>0&&nmenu.sep)nmenu.popupFrame.document.write("<div id='"+popupName+arrayItem+'sep'+"' style='background-color:"+nmenu.borderCol+";height:"+nmenu.sep+";width:"+(nmenu.popupWidth-nmenu.bord*2)+"'></div>"); var popupArray=(array[arrayItem*3+2])?(arrayName+"_"+parseInt(arrayItem+1)):null; var iconTag=(array[arrayItem*3+2]?"<IMG SRC=\'"+getAbsolutePath(nmenu.imgFolder)+"/"+nmenu.fnm+"ia.gif\' BORDER=0 WIDTH="+nmenu.iconSize+" HEIGHT="+nmenu.iconSize+" HSPACE=0 ALIGN=RIGHT>":""); var itemText=array[arrayItem*3]; var style="width:"+(nmenu.popupWidth-nmenu.bord*2-nmenu.vertSpace*2)+";padding-left:"+nmenu.vertSpace+";padding-top:"+nmenu.vertSpace+";padding-bottom:"+nmenu.vertSpace; style+=";font-size:"+levelAttribs[0]+";width:"+(nmenu.popupWidth-nmenu.vertSpace*2-nmenu.bord*2)+";color:"+levelAttribs[3]+";font-family:"+levelAttribs[6]; if(levelAttribs[1])style+=";font-weight:bold"; if(levelAttribs[2])style+=";font-style:italic"; nmenu.popupFrame.document.write("<div"+ali+"id='"+(popupName+arrayItem)+"' style=\""+style+"\">"+iconTag+itemText+"</div>"); } nmenu.popupFrame.document.write("<div style='height:0'> </div>"); nmenu.popupFrame.document.write("</div>"); for(arrayItem=0;arrayItem<array.length/3;arrayItem++) { if(array[arrayItem*3+2]) buildPopup(nmenu,arrayName+'_'+(arrayItem+1),level+1); } } function buildPopups() { var nmn; var pf; for(nmn=1;nmn<=lastm;nmn++) { var nmenu=eval("window.m"+nmn); if(nmenu&&(!nmenu.sepFrame||nmenu.openSameFrame)) { nmenu.popupFrame=(nmenu.sepFrame&&!nmenu.openSameFrame)?findFr(window.top,nmenu.contentFrame):window; targetFrame=(nmenu.sepFrame)?findFr(window.top,nmenu.cntFrame):window; var i=1; while(true) { var menu=eval(nmenu.name+'mn'+i); if (!menu)break; buildPopup(nmenu,nmenu.name+'mn'+i,0); i++; } pf=nmenu.popupFrame; } } if(pf)pf.document.close(); } buildPopups (); function createMenuItem(nmenu,popup,id,itemLink,itemText,popupArray,levelAttribs,bLast,popupHeight) { var itemWnd=findElement(nmenu.popupFrame,id); addNewEvent(itemWnd,"mouseover",onItemOver,false); addNewEvent(itemWnd,"mouseout",onItemOut,false); addNewEvent(itemWnd,"mousedown",onItemClick,false); addNewEvent(itemWnd,"dblclick",onItemClick,false); itemWnd.owner=popup; with (itemWnd.style) { if(itemLink){cursor="hand";} else{cursor="default";} backgroundColor=levelAttribs[4]; setRealWidth(itemWnd,nmenu.popupWidth,2*nmenu.bord); } if (popupArray)itemWnd.popupArray=popupArray; itemWnd.url=getAbsolutePath(itemLink); itemWnd.dispText=itemText; return itemWnd.offsetHeight; } function setRealWidth(wnd,width,borderWidth) { wnd.style.pixelWidth=width-borderWidth; if (wnd.style.pixelWidth>width-borderWidth) wnd.style.pixelWidth=width-parseInt(wnd.style.paddingLeft)-parseInt(wnd.style.paddingRight); } function createPopupFromCode(nmenu,arrayName,level) { var popupName=arrayName+"popup"; var popup=findElement(nmenu.popupFrame,popupName); if (popup&&popup.bCreated)return popup; var levelAttribs; if (level > nmenu.maxlev) {levelAttribs = eval ("nmenu.lev" + nmenu.maxlev) ;} else {levelAttribs = eval ("nmenu.lev" + level) ;} popup.level=level; popup.highlightColor=levelAttribs[5]; popup.normalColor=levelAttribs[3]; popup.highlightBgColor=levelAttribs[7]; popup.normalBgColor=levelAttribs[4]; popup.scrVis=false; popup.bCreated=true; popup.nmenu=nmenu; with (popup.style) { zIndex=maxZ; position="absolute"; width=nmenu.popupWidth; borderColor=nmenu.borderCol; backgroundColor=nmenu.bord?nmenu.borderCol:levelAttribs[4]; borderWidth=nmenu.bord; borderStyle="solid"; } addNewEvent(popup,"mouseout",onPopupOut,false); addNewEvent(popup,"mouseover",onPopupOver,false); var popupHeight=0; var array=eval(arrayName); var arrayItem; for(arrayItem=0;arrayItem<array.length/3;arrayItem++) { var popupArray=(array[arrayItem*3+2])?(arrayName+"_"+parseInt(arrayItem+1)):null; popupHeight+=createMenuItem(nmenu,popup,(popupName+arrayItem),array[arrayItem*3+1],array[arrayItem*3],popupArray,levelAttribs,(arrayItem == array.length/3-1),popupHeight); } return popup; } function closePopup(nmenu,popupId,dl) { if(popupId.indexOf('_')==-1) { var hideWnd=findElement(nmenu.popupFrame,'HideItem'); if(hideWnd)hideWnd.style.visibility='visible'; if (nmenu.actm&&dl) chgBg (nmenu, nmenu.actm, 0, 1); } var popup=findElement(nmenu.popupFrame,popupId); if (popup) { resetPopup(popup); if (popup.expandedWnd) closePopup (nmenu,popup.expandedWnd.id); popup.style.visibility="hidden"; } if (nmenu.activePopup && nmenu.activePopup.id==popupId) nmenu.activePopup=null; } function absToRel(rect,refx,refy) { var retval=new rct(rect.left-refx,rect.top-refy,rect.right-refx,rect.bottom-refy); return retval; } function removeHighlight (popup,actEl) { var items=popup.getElementsByTagName("DIV"); var i=0; for (;i<items.length;i++)if(actEl!=items[i]&&(!items[i].id||items[i].id.indexOf("scroll")==-1)) { items[i].style.backgroundColor=popup.normalBgColor; items[i].style.color=popup.normalColor; } } function openPopup(nmenu,popup,x,y,bDontMove,refWnd) { if(popup.id.indexOf('_')==-1){var hideWnd=findElement(nmenu.popupFrame,'HideItem');if(hideWnd)hideWnd.style.visibility='hidden';} popup.style.pixelLeft=x; popup.style.pixelTop=y; popup.style.visibility="visible"; var popupRect=getClientRect(nmenu,popup); var browserRect=getBrowserRect(nmenu.popupFrame); if (popupRect.right>browserRect.right) { if(refWnd&&refWnd.id&&refWnd.id.indexOf('top')==-1)popup.style.pixelLeft=Math.max(0,refWnd.offsetLeft-popup.offsetWidth+nmenu.levelOffset); else popup.style.pixelLeft=browserRect.right-popup.offsetWidth-5; } removeHighlight (popup,null); } function isChildOfActivePopup(nmenu,popup) { var wnd=nmenu.activePopup; while(wnd) { if (wnd.id==popup.id) return true; wnd=wnd.expandedWnd; } return false; } function onPopupOver() { var nmenu=this.nmenu; if (nmenu.activePopup && isChildOfActivePopup (nmenu,this)) clearTimeout(nmenu.activePopupTimeout); } function onPopupOut() { var nmenu=this.nmenu; onPopupOutImpl(nmenu,this); } function onPopupOutImpl(nmenu,popup) { if (nmenu.mout && nmenu.activePopup && isChildOfActivePopup (nmenu,popup)) { if (nmenu.activePopupTimeout) clearTimeout (nmenu.activePopupTimeout); nmenu.activePopupTimeout=setTimeout("closePopup("+nmenu.name+",'"+nmenu.activePopup.id+"',1);", nmenu.closeDelay); } } function rct(left,top,right,bottom) { this.left=left; this.top=top; this.right=right; this.bottom=bottom; } function getBody(frame) { var bodyArr=frame.document.getElementsByTagName('body'); return bodyArr[0]; } function getBrowserRect(doc) { var body=getBody(doc); var left=body.style.pixelLeft; var top=body.style.pixelTop; var right=left+body.style.pixelWidth; var bottom=top+body.style.pixelHeight; var retval=new rct(left,top,right,bottom); return retval; } function getClientRect(nmenu,wnd) { var left=0; var top=0; var right=0; var bottom=0; var par=wnd; while (par) { left+=par.offsetLeft; top+=par.offsetTop; if (par.offsetParent==par || par.offsetParent==getBody(nmenu.popupFrame)) break; par=par.offsetParent; } right=left+wnd.offsetWidth; bottom=top+wnd.offsetHeight; var retval=new rct(left,top,right,bottom); return retval; } function findFr(wn,fr) { if(wn.frames) { for(var i=0;i<wn.frames.length;i++) { if(wn.frames[i].name==fr)return wn.frames[i]; var ret=findFr(wn.frames[i],fr); if(ret)return ret; } } return null; } function onItemClick() { var item=this; var nmenu=this.owner.nmenu; if (item.url) { var trgFrame = nmenu.cntFrame; var startPos=item.dispText.indexOf('<!--'); if (startPos!=-1) { var endPos = item.dispText.indexOf('-->',startPos); trgFrame = item.dispText.substring (startPos+4,endPos); } if (trgFrame) { if (trgFrame=="_blank") window.open (item.url); else if (trgFrame=="_top") window.top.location.href=item.url; else if (trgFrame.indexOf('_')==0) parent.location.href=item.url; else { var fr=findFr(window.top,trgFrame); if(fr)fr.location.href=item.url; else window.location.href=item.url; } } else { var find=item.url.indexOf("javascript:"); if (find!=-1) eval(item.url.substring(find)); else { var mt=item.url.indexOf("mailto:"); if(mt!=-1)window.location=item.url.substring(mt); else if(nmenu.popupFrame!=window) window.open(item.url); else targetFrame.location=item.url; } } if(nmenu.activePopup)closePopup(nmenu,nmenu.activePopup.id,1); } } function onItemOver() { var item=this; var nmenu=this.owner.nmenu; if (item.owner.expandedWnd) { resetPopup(item.owner); closePopup(nmenu,item.owner.expandedWnd.id); } if (item.url&&item.url.indexOf("javascript:")==-1) window.status=item.url; else window.status=""; removeHighlight (item.owner,null); item.style.color=item.owner.highlightColor; item.style.backgroundColor=item.owner.highlightBgColor; var items=item.owner.getElementsByTagName("DIV"); if (item.popupArray) { var rect=getClientRect(nmenu,item); var x=rect.right-nmenu.levelOffset; var y=rect.top; var popup=createPopupFromCode(nmenu,item.popupArray,item.owner.level+1); item.owner.expandedWnd=popup; openPopup(nmenu,popup,x,y+2,false,item.owner); } } function onItemOut() { var item=this; var nmenu=this.owner.nmenu; window.status=""; } function expandMenu(nmenu,popupId,refWnd,dum,ml,mt,mr,mb) { if(!docLoaded)return; clearTimeout(nmenu.activePopupTimeout); if (nmenu.activePopup&&nmenu.activePopup.id!=popupId+"popup") closePopup(nmenu,nmenu.activePopup.id); if(popupId=='none')return; var rect; if(refWnd=='coords'){rect=getClientRect(nmenu,findElement(0,nmenu.name+'tl'));rect.left=rect.left+ml;rect.top=rect.top+mt;rect.right=rect.left+mr;rect.bottom=rect.top+mb;}else{rect=getClientRect(nmenu,findElement(0,refWnd));} var x; var y; #ifdef MENU_HORIZONTAL #ifdef MENU_VERTICAL if(nmenu.menuHorizontal) { x=rect.left; y=rect.bottom+nmenu.popupOffset; } else { x=rect.right+nmenu.popupOffset; y=rect.top; } #endif #endif #ifdef MENU_HORIZONTAL #ifndef MENU_VERTICAL x=rect.left; y=rect.bottom+nmenu.popupOffset; #endif #endif #ifndef MENU_HORIZONTAL #ifdef MENU_VERTICAL x=rect.right+nmenu.popupOffset; y=rect.top; #endif #endif #ifdef MENU_SEPARATE_FRAME if(nmenu.sepFrame&&!nmenu.openSameFrame) { var brRect=getBrowserRect(nmenu.popupFrame); var wRect=getBrowserRect(window); switch (nmenu.menuPos) { case 0: x=brRect.left+nmenu.popupOffset; y+=brRect.top-wRect.top; break; case 1: x=brRect.right-nmenu.popupOffset; y+=brRect.top-wRect.top; break; case 2: x+=brRect.left-wRect.left; y=brRect.top+nmenu.popupOffset; break; case 3: x+=brRect.left-wRect.left; y=brRect.bottom-nmenu.popupOffset; break; } } #endif var popup=createPopupFromCode(nmenu,popupId,0); openPopup(nmenu,popup,x,y,true,null); nmenu.activePopup=popup; } function collapseMenu(nmenu,popupId) { if(!docLoaded)return; var popup=findElement(nmenu.popupFrame,popupId+"popup"); if(popup)onPopupOutImpl(nmenu,popup); } function expandMenuNS(nmenu,popupId,e,dItem) { } function collapseMenuNS(nmenu,popupId) { } function onDocClick() { var nmn; for(nmn=1;nmn<lastm;nmn++) { var nmenu=eval("window.m"+nmn); if(nmenu&&nmenu.activePopup)closePopup(nmenu,nmenu.activePopup.id,1); } } function initializeMenu() { if(docLoaded)return; var nmn; for(nmn=1;nmn<lastm;nmn++) { var nmenu=eval("window.m"+nmn); if(nmenu&&!nmenu.mout)addNewEvent(nmenu.popupFrame.document,"mousedown",onDocClick,false); } docLoaded=true; } function addNewEvent(obj,event,fun,bubble) { if (obj.addEventListener) obj.addEventListener(event,fun,bubble); else eval("obj.on"+event+"="+fun); } function chgBg(nmenu,item,color,cl) { var el=findElement(0,item); if (color==0) { if (cl) { if(!nmenu.bBitmapScheme)el.style.background=nmenu.tlmOrigBg; el.style.color=nmenu.tlmOrigCol; } } else { if(nmenu.actm) chgBg (nmenu, nmenu.actm, 0, 1); if(!nmenu.bBitmapScheme&&(color&1))el.style.background=nmenu.tlmHlBg ; if(color&2)el.style.color=nmenu.tlmHlCol ; nmenu.actm = item; } } function initializeAll() { var i; for(i=0;i<=document.lastLoadHandler;i++) { eval(document.loadHandlers[i]+'();'); } }